﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace __Ts.Core.Security
{
    /// <summary>
    /// 1、密码必须符合复杂性要求
    /// 2、密码长度最小值
    /// 3、密码最短使用期限
    /// 4、密码最长使用期限
    /// 5、强制密码历史
    /// </summary>
    public class PasswordPolicy
    {
        /// <summary>
        /// 帐号名正则表达式
        /// => 字母开头
        /// </summary>
        public const string ACCOUNT_REGEX_KEY = @"^[a-zA-Z]{1,25}[\._]?[a-zA-Z0-9]{2,25}$";
        /// <summary>
        /// 密码正则表达式
        /// => 密码必须仅且由数字、字母、特殊符号(@ % &)组成，三者缺一不可，密码不少于6位
        /// </summary>
        public const string PASSWORD_REGEX_KEY = @"^(?=.*\d)(?=.*[a-zA-Z])(?=.*[@%&])[0-9a-zA-Z@%&]{6,}$";

    }
}
